Exporter

ABSTRACT

A method, apparatus, and computer program product are disclosed for self-service design, scheduling, and delivery of user-defined reports regarding promotions. The method includes receiving, from a user device, a report type and report delivery information. Based on the report type, relevant data regarding the one or more promotions is collected, using which a report is generated. The method then outputs the generated report based on the report delivery information. Optionally, analytical insights, such as trends within the data, sample size, suitability of control data, and indications of statistical significance, are generated and included in the report. A corresponding apparatus and computer program product are also provided.

TECHNOLOGICAL FIELD

Example embodiments of the present invention relate generally todocument generation and, more particularly, to a method and apparatusfor self-service design, scheduling, and delivery of user-definedreports regarding promotions.

BACKGROUND

Applicant has discovered problems with current methods for generatingreports regarding promotions. Through applied effort, ingenuity, andinnovation, Applicant has solved many of these identified problems bydeveloping a solution that is embodied by the present invention, whichis described in detail below.

BRIEF SUMMARY

Accordingly, a method, apparatus, and computer program product areprovided for improving the design, scheduling, and delivery of reportsregarding promotions.

In a first example embodiment, a method is provided for automating thegeneration of reports regarding one or more promotions. The methodincludes receiving, from a user device, a report type and reportdelivery information, collecting, based on the report type, relevantdata regarding the one or more promotions, generating, by a processor, areport using the collected data, and outputting the generated reportbased on the report delivery information.

In one embodiment of the method, the report delivery informationindicates a desired delivery frequency. In another embodiment, thereport type indicates a subscription to a standardized report. In yetanother embodiment, the report type specifies framework parameters forthe report.

In another embodiment, the method further includes generating, based onthe report delivery information, an analytical insight regarding thedata contained in the report, wherein the generated report includes theanalytical insight. In this regard, the analytical insight may includeat least one selected from the group consisting of: trends within thedata, a sample size, suitability of control data, and an indication ofstatistical significance.

In yet another embodiment, the method includes receiving logincredentials from the user device, and validating that the report typeand report delivery information are accessible based on access rightsassociated with the login credentials.

In another example embodiment, an apparatus is provided for generatingreports regarding promotions. The apparatus includes a processor and amemory, the memory storing computer program code that, when executed bythe processor, causes the apparatus to receive, from a user device, areport type and report delivery information, collect, based on thereport type, relevant data regarding the one or more promotions,generate a report using the collected data, and output the generatedreport based on the report delivery information.

In one embodiment of the apparatus, the report delivery informationindicates a desired delivery frequency. In another embodiment, thereport type indicates a subscription to a standardized report. In yetanother embodiment, the report type specifies framework parameters forthe report.

In another embodiment, the computer program code, when executed by theprocessor, further causes the apparatus to generate, based on the reportdelivery information, an analytical insight regarding the data containedin the report, wherein the generated report includes the analyticalinsight. In this regard, the analytical insight may include at least oneselected from the group consisting of: trends within the data, a samplesize, suitability of control data, and an indication of statisticalsignificance.

In yet another embodiment, the computer program code, when executed bythe processor, further causes the apparatus to receive login credentialsfrom the user device, and validate that the report type and reportdelivery information are accessible based on access rights associatedwith the login credentials.

In another example embodiment, a computer program product is providedfor generating reports regarding promotions. The computer programproduct includes a computer-readable storage medium storing computerprogram code that, when executed by an apparatus, causes the apparatusto receive, from a user device, a report type and report deliveryinformation, collect, based on the report type, relevant data regardingthe one or more promotions, generate a report using the collected data,and output the generated report based on the report deliveryinformation.

In one embodiment of the computer program product, the report deliveryinformation indicates a desired delivery frequency. In anotherembodiment, the report type indicates a subscription to a standardizedreport. In yet another embodiment, the report type specifies frameworkparameters for the report.

In another embodiment, the computer program code, when executed by theapparatus, further causes the apparatus to generate, based on the reportdelivery information, an analytical insight regarding the data containedin the report, wherein the generated report includes the analyticalinsight. In this regard, the analytical insight may include at least oneselected from the group consisting of: trends within the data, a samplesize, suitability of control data, and an indication of statisticalsignificance.

In yet another embodiment, the computer program code, when executed bythe apparatus, further causes the apparatus to receive login credentialsfrom the user device, and validate that the report type and reportdelivery information are accessible based on access rights associatedwith the login credentials.

The above summary is provided merely for purposes of summarizing someexample embodiments to provide a basic understanding of some aspects ofthe invention. Accordingly, it will be appreciated that theabove-described embodiments are merely examples and should not beconstrued to narrow the scope or spirit of the invention in any way. Itwill be appreciated that the scope of the invention encompasses manypotential embodiments in addition to those here summarized, some ofwhich will be further described below.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described certain example embodiments of the presentdisclosure in general terms, reference will now be made to theaccompanying drawings, which are not necessarily drawn to scale, andwherein:

FIG. 1 illustrates an example system within which embodiments of thepresent invention may operate;

FIG. 2 illustrates a block diagram showing an example device for use ina promotional server, in accordance with some example embodiments of thepresent invention;

FIG. 3 illustrates an example diagram of one mechanism by which datafrom the various databases can be captures, packaged, and presented to auser, in accordance with some example embodiments.

FIG. 4 illustrates a block diagram showing an example device for use byan internal user, a merchant, or a customer, in accordance with anexample embodiment of the present invention;

FIG. 5A illustrates a user interface using which a user may create auser profile or login to a promotional system, in accordance with someexample embodiments;

FIG. 5B illustrates a user interface using which a user may create acustom report, in accordance with some example embodiments;

FIG. 6 illustrates a user interface using which a user may scheduledelivery frequency of one or more reports, in accordance with someexample embodiments;

FIG. 7 illustrates an email interface using which a user may receivedelivery of a report, in accordance with some example embodiments; and

FIG. 8 illustrates a flowchart describing example operations for reportdesign, scheduling, and delivery, in accordance with some exampleembodiments.

DETAILED DESCRIPTION

Some embodiments of the present invention will now be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the inventions are shown. Indeed, theseinventions may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. Like numbers refer to like elements throughout.

As used herein, the terms “data,” “content,” “information,” and similarterms may be used interchangeably to refer to data capable of beingtransmitted, received, and/or stored in accordance with embodiments ofthe present invention. Thus, use of any such terms should not be takento limit the spirit and scope of embodiments of the present invention.Further, where a computing device is described herein to receive datafrom another computing device, it will be appreciated that the data maybe received directly from the another computing device or may bereceived indirectly via one or more intermediary computing devices, suchas, for example, one or more servers, relays, routers, network accesspoints, base stations, hosts, and/or the like, sometimes referred toherein as a “network.” Similarly, where a computing device is describedherein to send data to another computing device, it will be appreciatedthat the data may be sent directly to the another computing device ormay be sent indirectly via one or more intermediary computing devices,such as, for example, one or more servers, relays, routers, networkaccess points, base stations, hosts, and/or the like.

As used herein, the term “promotion and marketing service” may include aservice that is accessible via one or more computing devices and isoperable to provide example promotion and/or marketing services onbehalf of one or more providers that are offering one or moreinstruments that are redeemable for goods, services, experiences and/orthe like. In some examples, the promotion and marketing service may takethe form of a redemption authority, a payment processor, a rewardsprovider, an entity in a financial network, a promoter, an agent and/orthe like. As such, the service is, in some example embodiments,configured to present one or more promotions via one or moreimpressions, accept payments for promotions from consumers, issueinstruments upon acceptance of an offer, participate in redemption,generate rewards, provide a point of sale device or service, issuepayments to providers and/or or otherwise participate in the exchange ofgoods, services or experiences for currency, value and/or the like.

As used herein, the term “merchant” may include, but is not limited to,a business owner, consigner, shopkeeper, tradesperson, vender, operator,entrepreneur, agent, dealer, organization or the like that is in thebusiness of a providing a good, service or experience to a consumer,facilitating the provision of a good, service or experience to aconsumer and/or otherwise operating in the stream of commerce. Oneexample merchant may be a running company that sells attire for use by aperson who runs or participates in athletic activities.

As used herein, the term “promotion” may include, but is not limited to,any type of offered, presented or otherwise indicated reward, discount,coupon, credit, deal, incentive, discount, media or the like that isindicative of a promotional value or the like that upon purchase oracceptance results in the issuance of an instrument that may be usedtoward at least a portion of the purchase of particular goods, servicesand/or experiences defined by the promotion. An example promotion, usingthe aforementioned running company as the example provider, is $25 for$50 toward running shoes. In some examples, the promotion defines anaccepted value (e.g., a cost to purchase the promotion), a promotionalvalue (e.g., the value of the resultant instrument beyond the acceptedvalue), a residual value (e.g., the value upon return or upon expiry ofone or more redemption parameters), one or more redemptions parametersand/or the like. Using the running company promotion as an example, theaccepted value is $25 and the promotional value is $50. In this example,the residual value may be equal to the accepted value.

Overview

A method, apparatus, and computer program product are provided inaccordance with an example embodiment of the present invention in orderto enable the self-service design, scheduling, and delivery of reportsregarding promotions.

A promotion and marketing service having many hundreds, if notthousands, of employees, and orders of magnitudes more partneringmerchants and customers, necessarily will generate, track, and storelarge volumes of data every day. This data may include the structure ofthe myriad of promotions offered by the promotion and marketing service,information regarding the historical success of the promotions,information regarding the merchants partnering with the promotion andmarketing service, and, of course, information regarding the activity ofcustomers who purchase promotions from the promotion and marketingservice. Such a vast amount of data can only meaningfully provideinsights when presented in a well-designed report. However,traditionally such reports are manually designed and generated.

Moreover, some reports may be frequently accessed, thus resulting in agreat deal of duplicated effort. In addition, because the number ofindividuals who may benefit from the data stored by the promotion andmarketing service is almost always greater than the number ofindividuals who prepare and deliver reports, there is an ever-presentworry that bottlenecks will prevent the timely delivery of importantreports.

In addition, while reports may sometimes be used simply to track basicmetrics regarding promotions for an internal employee, reports are alsosometimes used to analyze the results of experiments that are run toidentify how the structure of a promotion may affect the frequency withwhich a promotion is redeemed. However, for such experiments to bevaluable, it is often necessary to statistically analyze the variableand control populations within the experiment. Using manual reporting,such procedures are cumbersome and introduce the possibility of humanerror.

Accordingly, embodiments of the present invention improve upon manualreporting procedures by providing a system that can flexibly automatereporting functionality. In this regard, in some embodiments a system isprovided that may store standard reports that are frequently accessed byemployees, merchants, and/or customers. The system may enable users toselect common reports they wish to receive and to schedule a reportingfrequency. In one such embodiment, this system may be extended to enableusers to design their own reports, using a self-service graphical userinterface (GUI).

Additionally or alternatively, embodiments of the present inventioncontemplate improving upon this data reporting functionality byinserting analytical insight that might otherwise need to be generatedmanually. For instance, trends in the data may be highlighted, thesample size of the data captured in the report may be presented, and thecontrol versus variant suitability and/or statistical significance ofexperimental results may be generated and displayed as part of thereport.

As a result, embodiments of the present invention enable the design,scheduling, and delivery of reports that are more reliable,reproducible, and which do not suffer from the potential bottleneckcaused by manual report generation. In this fashion, the presentinvention increases the ability of stakeholders to maximize the value ofthe large amount of data stored by the promotion and marketing service.

System Architecture

The method, apparatus, and computer program product of the presentinvention may be embodied by any of a variety of devices. For example,the method, apparatus, and computer program product of an exampleembodiment may be embodied by a networked device, such as a server orother network entity, configured to communicate with one or moredevices, such as one or more client devices. Additionally oralternatively, the computing device may include fixed computing devices,such as one or more personal computer or a computer workstation. Stillfurther, an example embodiment may be embodied by any of a variety ofmobile terminals, such as a portable digital assistant (PDA), mobiletelephone, smartphone, laptop computer, tablet computer, or anycombination of the aforementioned devices.

In this regard, FIG. 1 discloses an example computing system withinwhich embodiments of the present invention may operate. Users, includinginternal users (e.g., employees of the promotion and marketing service),merchants, and customers may access a promotional system 102 via anetwork 112 (such as the Internet, or the like) using computer devices114A through 114N, 116A through 116N, and 118A through 118N,respectively. Moreover, the promotional system 102 may comprise apromotional server 104 in communication with a user database 106 thatstores login credentials, access rights, and reporting preferences ofthe various users. The promotional system 102 may further have access topromotional database 108 that stores promotions offered by thepromotional system 102, and historical database 110 that storeshistorical information regarding previously offered promotions. In someembodiments, the promotional system 102 may include or be incommunication with additional proprietary databases (not shown inFIG. 1) that may provide additional data not contained within thepromotional database 108 or historical database 110. The promotionalsystem 102 is thus, in some examples, able to facilitate the designing,scheduling, and delivery of reports to the various users, as will bedescribed below.

The promotional server 104 may be embodied by a computing system, suchas apparatus 200 shown in FIG. 2. As illustrated in FIG. 2, theapparatus 200 may include a processor 202, a memory 204, an input/outputmodule 206, a communications module 208, and an exporter module 210, andmay be configured to execute the operations described below. In someembodiments, the processor 202 (and/or co-processor or any otherprocessing circuitry assisting or otherwise associated with theprocessor) may be in communication with the memory 204 via a bus forpassing information among components of the apparatus. The memory 204may be non-transitory and may include, for example, one or more volatileand/or non-volatile memories. In other words, for example, the memorymay be an electronic storage device (e.g., a computer readable storagemedium). The memory may be configured to store information, data,content, applications, instructions, or the like, for enabling theapparatus to carry out various functions in accordance with an exampleembodiment of the present invention.

The processor 202 may be embodied in a number of different ways and may,for example include one or more processing devices configured to performindependently. Additionally or alternatively, the processor may includeone or more processors configured in tandem via a bus to enableindependent execution of instructions, pipelining, and/ormultithreading. In an example embodiment, the processor 202 may beconfigured to execute instructions stored in the memory 204 or otherwiseaccessible to the processor. Additionally or alternatively, theprocessor may be configured to execute hard-coded functionality. Assuch, whether configured by hardware or software methods, or by acombination thereof, the processor may represent an entity (e.g.,physically embodied in circuitry) capable of performing operationsaccording to an embodiment of the present invention while configuredaccordingly. Alternatively, as another example, when the processor isembodied as an executor of software instructions, the instructions mayspecifically configure the processor to perform the algorithms and/oroperations described herein when the instructions are executed.

In some embodiments, the apparatus 200 may include an input/outputmodule 206 that may, in turn, be in communication with processor 202 toprovide output to the user and, in some embodiments, to receive anindication of a user input. The input/output module may comprise a userinterface and may include a display and may comprise a web userinterface, a mobile application, a client device, a kiosk, or the like.In some embodiments, the input/output module 206 may also include akeyboard, a mouse, a joystick, a touch screen, touch areas, soft keys, amicrophone, a speaker, or other input/output mechanisms. The processorand/or user interface circuitry comprising the processor may beconfigured to control one or more functions of one or more userinterface elements through computer program instructions (e.g., softwareand/or firmware) stored on a memory accessible to the processor (e.g.,memory 204, and/or the like).

Meanwhile, the communications module 208 may be any means such as adevice or circuitry embodied in either hardware or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network and/or any other device or module in communicationwith the apparatus 300. In this regard, the communication interface mayinclude, for example, an antenna (or multiple antennas) and supportinghardware and/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationinterface may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication interface may additionally or alternatively support wiredcommunication. As such, for example, the communication interface mayinclude a communication modem and/or other hardware/software forsupporting communication via cable, digital subscriber line (DSL),universal serial bus (USB), or other mechanisms.

The exporter module 210 may be used to design, schedule, and deliverreports based on user preference. In this regard, the exporter module210 may include four functions that enable the promotional system 102 toperform various embodiments of the present invention that are describedherein.

First, the exporter module 210 may include a query function that canaccess promotional database 108, historical database 110, and anyadditional proprietary databases that may be relevant to a particularreport. Each query may be prompted by the design of a specific reportand by running various queries the exporter module 210 may collect thedata necessary for the specific report.

Second, the exporter module 210 may include a user profile generationfunction that creates profiles for the various users that may interactwith the promotional system 102. In this regard, this profile generationfunction enables the exporter module 210 to generate login credentials,associated access rights for accessing the data stored in thepromotional database 108, historical database 110, and any otherproprietary databases. Once created, the user profile may be stored inuser database 106.

Third, the exporter module 210 may include a report designing functionthat enables individual users to build reports that will deliverinformation relevant to their specific needs, as discussed in greaterdetail below. The designed reports may also be stored in the userdatabase 106 in association with the user profile of the user whodesigned the report, and a description of any access level informationthat may be relevant to the particular report (e.g., if sensitivecustomer data will be included in the report, only other users havingrelevant access rights may receive the report). In this regard, thevariables that may be customized in a user-designed report may include adate range of data, a frequency with which results are updated,experiment(s) name, statistical properties such sample size estimates,specific inputs and output metrics depending on the experiment(s),experiment(s) results, and conclusions.

Fourth, the exporter module may include a scheduler that enablesindividual users to schedule the generation and delivery of theirdesired reports. In this regard, reports may be scheduled or deliveredon a periodic basis (e.g., once a day, once a week, once a month, etc.).The scheduling information may also then be associated with relevantuser profiles in the user database 106.

Turning now to FIG. 3, an example diagram is shown that illustrates onemechanism by which data from the various databases can be captured,packaged, and presented to a user. As shown, raw data sources 302Athrough 302N may correspond to promotional database 108, historicaldatabase 110, and/or any proprietary databases that may be accessible bythe promotional system 102. Data from these raw data sources may beharvested by exporter module 210 and summarized, as shown in element 304of FIG. 3. This summary may include the data collected from the raw datasources, but as described in greater detail below, the summarized datamay also include charts and trends, analytical insights and conclusions,and interactive dashboards for the benefit of the user, which may becollected into the form of a report. Finally, the report may bepresented to a user via user interface 306, which in one embodiment maycomprise input/output module 206. However, while an internal user mayuse the apparatus 200 to design, schedule, and retrieve reports inaccordance with example embodiments of the present invention, otherembodiments contemplated by the presented invention may run outside ofthe promotional system 102, such as, for example, on an end-user device,which may be a distinct internal user device 114, or a merchant device116 or customer device 118.

Referring now to FIG. 4, a block diagram is illustrated showing anexample apparatus 300 that may be configured to enable a user tointeract with the promotional system 102 from a remote device, inaccordance with embodiments of the present invention.

In FIG. 4, the apparatus 400, which may embody internal user device 114,merchant device 116, or customer device 118, may include or otherwise bein communication with a processor 402, a memory 404, a user interface406, and a communications module 408. In some embodiments, the processor(and/or co-processor or any other processing circuitry assisting orotherwise associated with the processor) may be in communication withthe memory 404 via a bus for passing information among components of theapparatus 400. The memory 404 may be non-transitory and may include, forexample, one or more volatile and/or non-volatile memories. In otherwords, for example, the memory 404 may be an electronic storage device(e.g., a computer readable storage medium). The memory 404 may beconfigured to store information, data, content, applications,instructions, or the like, for enabling the apparatus to carry outvarious functions in accordance with an example embodiment of thepresent invention.

The processor 402 may be embodied in a number of different ways and may,for example include one or more processing devices configured to performindependently. Additionally or alternatively, the processor 402 mayinclude one or more processors configured in tandem via a bus to enableindependent execution of instructions, pipelining, and/ormultithreading. In an example embodiment, the processor 402 may beconfigured to execute instructions stored in the memory 404 or otherwiseaccessible to the processor. Alternatively or additionally, theprocessor 402 may be configured to execute hard-coded functionality. Assuch, whether configured by hardware or software methods, or by acombination thereof, the processor 402 may represent an entity (e.g.,physically embodied in circuitry) capable of performing operationsaccording to an embodiment of the present invention while configuredaccordingly. Alternatively, as another example, when the processor 402is embodied as an executor of software instructions, the instructionsmay specifically configure the processor 402 to perform the algorithmsand/or operations described herein when the instructions are executed.

In some embodiments, the apparatus 400 may include a user interface 406that may, in turn, be in communication with processor 402 to provideoutput to the user and, in some embodiments, to receive an indication ofa user input. As such, the user interface 406 may include a display andmay comprise a web user interface, a mobile application, a clientdevice, or the like. In some embodiments, the user interface 406 mayalso include a keyboard, a mouse, a joystick, a touch screen, touchareas, soft keys, a microphone, a speaker, or other input/outputmechanisms. The processor 402 and/or user interface circuitry comprisingthe processor may be configured to control one or more functions of oneor more user interface elements through computer program instructions(e.g., software and/or firmware) stored on a memory accessible to theprocessor (e.g., memory 404, and/or the like).

Meanwhile, the communications module 408 may be any means such as adevice or circuitry embodied in either hardware or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network and/or any other device or module in communicationwith the apparatus 400. In this regard, the communication module 408 mayinclude, for example, an antenna (or multiple antennas) and supportinghardware and/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationmodule 408 may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication module 408 may additionally or alternatively support wiredcommunication. As such, for example, the communication module 408 mayinclude a communication modem and/or other hardware/software forsupporting communication via cable, digital subscriber line (DSL),universal serial bus (USB), or other mechanisms.

User Credentialing and Report Customization

Turning now to FIG. 5A, a user interface is illustrated using which auser (e.g., internal user, merchant, or customer) may create a userprofile or login to the promotional system 102. As shown in element 502,each user may have an associated username and password, which mayfurther be associated with a profile in user database 106. When the userhas never used the report exporting functionality of the promotionalsystem 102, the user may first need to register a username and password,and may accordingly select icon 504. Alternatively, when the user hasalready registered his account (and accordingly has a user profilestored in user database 106), the user may select the login icon 506.

Based on whether the user is an internal user (as noted above, anemployee of the promotion and marketing service), a merchant, or acustomer, different access rights may be associated with the userprofile in user database 106. In this regard, while an internal user mayhave complete access to all of the data stored in promotional database108 and historical database 110, in some embodiments, merchants andcustomers may not be able to access the entirety (i.e., may have morelimited access) of this information. Rather, a merchant may be able toaccess its own promotion and history information, while a customer mayonly be able to access the information regarding promotions andmerchants with which the customer has done business. Nevertheless, amerchant may have additional proprietary databases curated outside ofthe promotional system 102 that may be relevant to reports that themerchant would like to view. In this regard, it may in some embodiments,be possible for the merchant to have access rights greater than those ofan internal user. A similar possibility exists for a customer user,although it is less likely that a customer would separately have accessto any external proprietary databases.

Once logged in, a user (e.g., an internal user, a merchant, a customer,etc.) may wish to design new reports that appeal to their particulardesires. In this respect, a report customization screen may be presentedto the user while the user is logged into the promotional system 102,such as that shown in FIG. 5B. While it is possible to simply requestaccess to standardized reports, in some example embodiments, a user maycustomize reports that best suit that user's unique viewing needs.

An internal user may wish to use the reporting service to runexperiments to optimize the operation of the promotion offering process.For instance, the internal user may wish to identify how the structureof a promotion affects the frequency with which a promotion is redeemed.For instance, the size of an image associated with a promotion mayaffect the number of customers who are sufficiently interested topurchase the promotion. However, for this experiment to providestatistically significant results, it is necessary to analyze therelevant variable (here, image size) and control populations within theexperiment. Accordingly, the custom report may enable the internal userto better identify the merit of an original hypothesis that image sizeaffects the rate of promotion purchasing.

In contrast, a merchant may wish to generate reports regarding theperformance of its promotions or may wish to run experiments to identifypotential ways in which the merchant may improve the effectiveness ofits promotions. For instance, a merchant may typically run a promotionevery Tuesday night from 5 pm to 9 pm, but may be interested in seeingwhether sales are increased if the promotion is moved to a differentnight. Accordingly, the merchant may run an experiment by modifyingpromotion terms and developing a custom report that provides relevantinformation regarding the relative success of the modified promotion.

Finally, customers may wish to run periodic summary reports chartingtheir usage of promotions, cumulative savings, or to identify newpromotions that may appeal to them based on their purchasing history.Each such use case may be generated from an interface such as theexample illustrated in FIG. 5B.

As shown in item 508 of FIG. 5B, a user may first name a new report thatwill be generated. In item 510, the user may additionally specify asource from which the customized report will collect data by, forexample, using a pull-down menu shown in item 510. In this regard, thedata source may be promotional database 108, historical database 110,any proprietary database to which the promotional system 102 has access,or any combination of the above. Based on the selection of data sourcefrom item 510, a list of data types may be presented in a pull-down menushown in item 512 that are accessible from the selected data sources.For instance, if promotional database 108 is selected, the data typesmay indicate different types of data that may be relevant to the usercustomizing the report. In one example, in anticipation of the Christmasshopping season, a customer may wish to view all of the clothingpromotions that are available in his geographical area, and may thusselect one or more data types that correspond to these desired promotioncategories. As another example, a merchant may wish to view a list ofall promotions that the merchant currently offers for a particularproduct category. As yet another example, an internal user may wish toview a first data type of promotions for which an impression of thepromotion includes a picture, and a second data type of promotions forwhich the impression of the promotion does not include a picture (forsubsequent analysis against each other).

Once the data for inclusion in the report has been selected, the usermay optionally select analytical insights that the user may find helpfulin evaluating the report. In this regard, the user may, in one example,check a box 514 instructing the promotional system 102 to display trendsin the data for this custom report. Additionally or alternatively, theuser may check a box 516 instructing the promotional system 102 togenerate statistical information regarding the data included in thereport (e.g., sample size in the report, control versus variablesuitability, an indication of the statistical significance of the reportresults, or the like). In one embodiment, there may be a “Contact Us”icon (not shown) which, upon selection, will enable a user to ask forpersonalized support while generating a report. In this fashion, thereport may be specifically tailored the particular goals of theindividual user. Of course, alternatively or additionally, the userinterface may include one or more drop down boxes or other types of listboxes that contain additional customizable information that might berelevant to a user, such as, for example, communication alerts and/orflags for abnormal trends or issues with any experiments or reports.Once customization of the report is complete, the user may select theSubmit icon 518 to store the report in the user database 106.

Report Scheduling and Delivery

Turning now to FIG. 6, another user interface is shown, using which auser may customize which reports the user would like to run, andidentify a frequency with which the user would like to receive thereport. In this regard, the user may select a standardized report thatmay be prepopulated by the promotional system 102 (e.g., by exportermodule 210 or the like), but which may also include the customizedreports generated by the user as described above. The frequency withwhich the report is retrieved may be hourly, daily, weekly, monthly, orany other periodic interval desired by the user. Moreover, thisinterface also enables a user to select a subscription frequency formore than one report. Finally, the user may enter an email address atwhich the user would like to receive the report.

FIG. 7 illustrates an example email that may be received from thepromotional system 102. The email includes the report as an attachment(in this case, 20130726-PromNightCarouselWithVideo.csv”), for easyaccess by the user.

Promotional System Operations

Turning now to FIG. 8, example operations for report design, scheduling,and delivery are provided. The operations illustrated in FIG. 8 may, forexample, be performed by the promotional system 102 (e.g., promotionalserver 104), with the assistance of, and/or under the control of one ormore devices, such as apparatus 200, and may use processor 202, memory204, input/output module 206, communications module 208, and exportermodule 210.

Optionally, in operation 802, the apparatus 200 may include means, suchas input/output module 206, communications module 208, or the like, forreceiving login credentials from a user device. While in someembodiments, it may be possible to access reports anonymously based onthe degree of sensitivity of the information contained in the requestedreports (in which case this operation may not be required in someembodiments), in other embodiments as described above, it is incumbentupon a user to enter login credentials to access the promotional system102.

Then, in operation 804, the apparatus 200 includes means, such asinput/output module 206, communications module 208, exporter module 210,or the like, for receiving, from the user device, a report type andreport delivery information. In this regard, the report type mayindicate a subscription to a standardized report. Additionally oralternatively, the report type may specify framework parameters for thereport (e.g., a customized report). The report delivery information mayindicate a desired delivery frequency of the report.

Optionally, in operation 806, the apparatus 200 includes means, such asmemory 204, exporter module 210, or the like, for validating that thereport type and report delivery information are accessible with thelogin credentials. Depending on the sensitivity of the informationcontained in the report being requested, it may be the case that aparticular user does not have the necessary access rights to view thereport. In this fashion, privacy of sensitive customer information,merchant information, or promotion and marketing service information maybe maintained, even though the reporting functionality is automated.

In operation 808, the apparatus 200 includes means, such as processor202, communications module 208, exporter module 210, or the like, forcollecting, based on the report type, relevant data regarding one ormore promotions. In this regard, this operation may occur aftersatisfaction of the validation performed in operation 806. Thiscollection, as described above, may retrieve relevant data frompromotional database 108, historical database 110, or any number ofproprietary databases that are accessible by the promotional system 102.

In operation 810, the apparatus 200 includes means, such as processor202, exporter 210, or the like, for generating a report using thecollected data.

Optionally, in operation 812, the apparatus 200 may include means, suchas processor 202, exporter module 210, or the like, for generatinganalytical insight regarding the data contained in the report. Asdescribed above, such analytical insight may regard trends in the data,suitability of control data, abnormalities in the experiment,statistical information such as sample size, significance, or the like,or any number of other analytical results that may be identified basedon the set of data collected in the report. In this regard, theanalytical insights may take into account customer visits, conversionrates, historical comparison of revenue and bookings, and can beautomatically generated for each experiment. Moreover, in someembodiments the apparatus 200 may include one or more machine learningalgorithms for predictive modeling of trends and/or analytical insights.

Finally, in operation 814, the apparatus 200 includes means, such asinput/output module 206, communications module 208, exporter module 210,or the like, for outputting the generated report based on the reportdelivery information. In this fashion, via the presentation of a numberof user interfaces, various embodiments presented herein provide aself-service mechanism by which users may design, schedule, and retrievereports regarding promotions.

As described above, embodiments of the present invention enable thedesign, scheduling, and delivery of reports that are more reliable,reproducible, and which do not suffer from the potential bottleneckcaused by manual report generation. In this fashion, the presentinvention increases the ability of stakeholders to maximize the value ofthe large amount of data stored by a promotion and marketing service.

As will be appreciated, computer program code and/or other instructionsmay be loaded onto a computer, processor or other programmableapparatus's circuitry to produce a machine, such that execution of thecode on the machine by the computer, processor, or other circuitrycreates the means for implementing various functions, including thosedescribed herein.

As described above and as will be appreciated based on this disclosure,embodiments of the present invention may be configured as methods,mobile devices, backend network devices, and the like. Accordingly,embodiments may comprise various means including entirely of hardware ora combination of software and hardware. Furthermore, embodiments maytake the form of a computer program product on at least onecomputer-readable storage medium having computer-readable programinstructions (e.g., computer software) embodied in the storage medium.Any suitable computer-readable storage medium may be utilized, includingnon-transitory hard disks, CD-ROMs, flash memory, optical storagedevices, magnetic storage devices, or the like.

Embodiments of the present invention have been described above withreference to block diagrams and flowchart illustrations of methods,apparatuses, systems and computer program products. It will beunderstood that each block of the circuit diagrams and processflowcharts, and combinations of blocks in the circuit diagrams andprocess flowcharts, respectively, can be implemented by various meansincluding computer program instructions. These computer programinstructions may be loaded onto a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the computer program product includes theinstructions which execute on the computer or other programmable dataprocessing apparatus create a means for implementing the functionsspecified in the flowchart block or blocks.

These computer program instructions may also be stored in acomputer-readable storage device that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablestorage device produce an article of manufacture includingcomputer-readable instructions for implementing the function discussedherein. The computer program instructions may also be loaded onto acomputer or other programmable data processing apparatus to cause aseries of operational steps to be performed on the computer or otherprogrammable apparatus, thereby producing a computer-implemented processsuch that the instructions executed on the computer or otherprogrammable apparatus cause performance of the steps and therebyimplement the functions discussed herein.

Accordingly, blocks of the block diagrams and flowchart illustrationssupport combinations of means for performing the specified functions,combinations of steps for performing the specified functions and programinstruction means for performing the specified functions. It will alsobe understood that each block of the circuit diagrams and processflowcharts, and combinations of blocks in the circuit diagrams andprocess flowcharts, can be implemented by special purpose hardware-basedcomputer systems that perform the specified functions or steps, orcombinations of special purpose hardware and computer instructions.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseembodiments of the invention pertain having the benefit of the teachingspresented in the foregoing descriptions and the associated drawings.Therefore, it is to be understood that the embodiments of the inventionare not to be limited to the specific embodiments disclosed and thatmodifications and other embodiments are intended to be included withinthe scope of the appended claims. Although specific teens are employedherein, they are used in a generic and descriptive sense only and notfor purposes of limitation.

What is claimed is:
 1. A method for automating the generation of reportsregarding one or more promotions, the method comprising: receiving, froma user device, a report type and report delivery information, whereinthe report delivery information indicates a desired delivery frequency;receiving login credentials from the user device; validating, by aprocessor, that the report type and report delivery information areaccessible based on access rights associated with the login credentials;collecting, based on the report type and after validation, relevant dataregarding the one or more promotions from a proprietary database;generating, by the processor, a report using the collected data;generating, by the processor and based on the report deliveryinformation, an analytical insight regarding the collected data, whereinthe analytical insight includes at least one selected from the groupconsisting of: rends within the data, a sample size, suitability ofcontrol data, and an indication of statistical significance, and whereinthe generated report includes the analytical insight; and outputting thegenerated report based on the report delivery information.
 2. The methodof claim 1, wherein the report type indicates a subscription to astandardized report.
 3. The method of claim 1, wherein the report typespecifies framework parameters for the report.
 4. The method of claim 1,wherein the generated report further includes statistical informationregarding the collected data.
 5. The method of claim 1, whereingenerating the analytical insight regarding the collected data includes:predictively modeling the collected data using one or more machinelearning algorithms.
 6. The method of claim 1, further comprising:outputting an alert based on generation of the report.
 7. The method ofclaim 6, further comprising: identifying abnormal trends in thegenerated report, wherein outputting the alert is in response toidentifying the abnormal trends.
 8. An apparatus for generating reportsregarding promotions, the apparatus comprising a processor and a memory,the memory storing computer program code that, when executed by theprocessor, causes the apparatus to: receive, from a user device, areport type and report delivery information, wherein the report deliveryinformation indicates a desired delivery frequency; receive logincredentials from the user device; validate that the report type andreport delivery information are accessible based on access rightsassociated with the login credentials; collect, based on the report typeand after validation, relevant data regarding the one or more promotionsfrom a proprietary database; generate a report using the collected data;generate, based on the report delivery information, an analyticalinsight regarding the collected data, wherein the analytical insightincludes at least one selected from the group consisting of: trendswithin the data, a sample size, suitability of control data, and anindication of statistical significance, and wherein the generated reportincludes the analytical insight; and output the generated report basedon the report delivery information.
 9. The apparatus of claim 8, whereinthe report type indicates a subscription to a standardized report. 10.The apparatus of claim 8, wherein the report type specifies frameworkparameters for the report.
 11. The apparatus of claim 8, wherein thegenerated report further includes statistical information regarding thecollected data.
 12. The apparatus of claim 8, wherein generating theanalytical insight regarding the collected data includes: predictivelymodeling the collected data using one or more machine learningalgorithms.
 13. The apparatus of claim 8, wherein the computer programcode, when executed by the processor, causes the apparatus to: output analert based on generation of the report.
 14. The apparatus of claim 13,wherein the computer program code, when executed by the processor,causes the apparatus to identify abnormal trends in the generatedreport, and wherein the computer program code, when executed by theprocessor, causes the apparatus to output the alert in response toidentifying the abnormal trends.
 15. A computer program product forgenerating reports regarding promotions, the computer program productcomprising a non-transitory computer-readable storage medium storingcomputer program code that, when executed by an apparatus, causes theapparatus to: receive, from a user device, a report type and reportdelivery information, wherein the report delivery information indicatesa desired delivery frequency; receive login credentials from the userdevice; validate that the report type and report delivery informationare accessible based on access rights associated with the logincredentials; collect, based on the report type and after validation,relevant data regarding the one or more promotions from a proprietarydatabase; generate a report using the collected data; generate, based onthe report delivery information, an analytical insight regarding thecollected data, wherein the analytical insight includes at least oneselected from the group consisting of: trends within the data, a samplesize, suitability of control data, and an indication of statisticalsignificance, and wherein the generated report includes the analyticalinsight; and output the generated report based on the report deliveryinformation.
 16. The computer program product of claim 15, wherein thereport type indicates a subscription to a standardized report.
 17. Thecomputer program product of claim 15, wherein the report type specifiesframework parameters for the report.
 18. The computer program product ofclaim 15, wherein the generated report further includes statisticalinformation regarding the collected data.
 19. The computer programproduct of claim 15, wherein generating the analytical insight regardingthe collected data includes: predictively modeling the collected datausing one or more machine learning algorithms.
 20. The computer programproduct of claim 15, wherein the computer program code, when executed bythe apparatus, further causes the apparatus to: output an alert based ongeneration of the report.
 21. The computer program product of claim 20,wherein the computer program code, when executed by the apparatus,further causes the apparatus to identify abnormal trends in thegenerated report, and wherein the computer program code, when executedby the apparatus, further causes the apparatus to output the alert inresponse to identification of the abnormal trends.